home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 3 / BBS in a box - Trilogy III.iso / Files / Tele / Telefinder / Group Edition AE's / THINK C Interfaces / User Manager AE / UserAccessFile.h < prev    next >
Encoding:
Text File  |  1993-12-14  |  1.8 KB  |  80 lines  |  [TEXT/KAHL]

  1. /* 
  2.  
  3. user access file for TeleFinder Group Edition 2.6 (c)1992
  4. Spider Island Software ALL RIGHTS RESERVED
  5.  
  6. The user access file defines paths that users have access to
  7. They can be defined as either download type paths, or conference paths
  8.  
  9. The records are stored as fixed length records in no specific order.
  10. ( note the index field will be used to sort the data in the furture )
  11.  
  12. */
  13. // USER ACCESS FILE
  14.  
  15. #ifndef USER_ACCESS_FILE
  16. #define USER_ACCESS_FILE
  17.  
  18. #define        RFDType        0x14                /* file download */
  19. #define        Rfile        0x18                /* any file */
  20. #define        RCommObj    0x1F
  21.  
  22. #define        MailFldr    0x21                /* user mail folder */
  23. #define        ConfFldr    0x22                /* conference */
  24.  
  25. #define        RMailFldr    0x41                /* drop box icon */
  26.  
  27. #define        kUploadsFolder    0x42            // host defined folder for uploads
  28.  
  29. typedef struct AccessRec
  30. {
  31.     short             vRef;
  32.     long            DirID;
  33.     Str255            path;
  34.     Str32            DirName;
  35.     Str32            info_fName;
  36.     short            ObjType;
  37.     short            icon_id;
  38.     unsigned short    path_flags0_;    
  39.     unsigned short    path_flags1_;
  40.     Byte            spare[24];
  41.     short            index;
  42.     Str255            description;
  43. } AccessRec, *AccessRecPtr, **AccessRecHdl;
  44.  
  45.  
  46. typedef struct
  47. {
  48.     Byte            version;
  49.     long            RecSize;
  50.     long            NumRecs;
  51.     int                modified;
  52. } access_hdr;
  53.  
  54.  
  55. typedef struct
  56. {
  57.     access_hdr        FileHeader;
  58.     Byte            fName[65];
  59.     int                vRef;
  60.     long            DirID;
  61.     AccessRecHdl    Records[];
  62. } AccessData, *AccessDataPtr, **AccessDataHdl;
  63.  
  64.  
  65. // flags in path_flags0_
  66. #define access_create             (unsigned short)0x0001
  67. #define access_delete             (unsigned short)0x0002
  68. #define access_see_folders        (unsigned short)0x0004
  69. #define access_see_files        (unsigned short)0x0008
  70.  
  71. #define access_send_file_always        (unsigned short)0x0010
  72.  
  73. #define access_no_can_download        (unsigned short)0x0020
  74. #define access_no_create_threads    (unsigned short)0x0040
  75. #define access_no_new_folder        (unsigned short)0x0080
  76.  
  77. // file type for this file
  78. #define PATH_TYPE 'plst'
  79.  
  80. #endif